Method for determining the magnetic flux of an electric machine

ABSTRACT

The present invention relates to a method of determining the magnetic flux φ of an electric machine, based on measurements (MES) of currents and voltages in the phases of the electric machine, on a dynamic model (MOD) of the magnetic flux and on an adaptive Kalman filter (KAL).

FIELD OF THE INVENTION

The present invention relates to the field of control of electric machines, in particular control of salient-pole synchronous electric machines. These electric machines find applications notably in the field of motor vehicles.

Conventionally, an electric machine comprises a rotor (mobile part) and a stator (stationary part). The rotor is usually housed in the stator. Generally, the stator has an annular shape and it is housed within a tubular support to which it is fastened.

The stator comprises magnetic flux generators, generally electric windings. These windings are fed by a plurality (conventionally three) of electric phases in order to generate a rotating magnetic field. Furthermore, depending on the type of electric machine, notably for salient-pole synchronous electric machines, the rotor can comprise permanent magnets.

During operation of such an electric machine, an electric current flows through the windings so as to generate the magnetic field required to rotate the rotor.

BACKGROUND OF THE INVENTION

There are several types of control for such electric machines. It is notably well known that the direct torque control method is one of the most effective control strategies, enabling torque control in steady regime as well as transient regime, in particular for salient-pole synchronous electric machines. Furthermore, this control method is easier to implement than a field-oriented control method. Besides, this method requires less information relative to the electric machine, and no current control loop is necessary, which notably allows to solve the delay problem linked with this current control loop.

However, the drawback of this control method is that it is based on the magnetic flux signal of the electric machine, whereas this quantity cannot be directly measured while the electric machine is operating. The magnetic flux then needs to be estimated, for example by means of an observer using the other measurable quantities. The document: Mohamad Koteich. “Flux estimation algorithms for electric drives: a comparative study”, in: Renewable Energies for Developing Countries (REDEC), 2016, 3^(rd) International Conference, IEEE, 2016, pp. 1-6 (cit. on p. 5) reviews a certain number of methods of determining the magnetic flux.

Most methods of the prior art require knowledge of the resistance, the magnetic flux of the rotor and the inductance. However, while the resistance can be considered as known, the exact value of the magnetic flux of the rotor remains unknown, notably because it depends on the temperature of the rotor, which cannot be directly measured. Besides, in the presence of magnetic saturation, the inductance is a non-linear function of the current. Therefore, the problem of estimating the magnetic flux of the electric machine is non-trivial, which involves complexity and/or imprecision in estimations.

Patent application FR-3,035,755 describes a method of controlling an electric machine based on an estimation of the magnetic flux obtained by an observer and a discrete extended Kalman algorithm. The modelling process used in this method is not very robust against parameter variations, notably because the magnetic flux is indirectly estimated since it requires calculating the currents. Furthermore, the model described in this patent application does not take account of the non-linearity of the inductances (magnetic saturation). Besides, the discrete extended Kalman algorithm does not allow variability over time of the system. Indeed, the extended Kalman filter only takes into account the non-linearity linked with the presence of speed in the equations.

In order to overcome these drawbacks, the present invention relates to a method of determining the magnetic flux of an electric machine, based on measurements of currents and voltages in the phases of the electric machine, on a dynamic model of the magnetic flux and on an adaptive Kalman filter. The dynamic model of the magnetic flux provides a precise (taking account of the variability over time of the system) and robust model of the magnetic flux. Thus, the magnetic flux is directly determined. The adaptive Kalman filter allows adaptation of the noise covariance matrix according to the rotational speed of the electric machine. Thus, the filter is efficient over a wide operating range of the electric machine. Moreover, the adaptive Kalman filter is robust against magnetic flux variations of the rotor and the inductance.

The invention also relates to a method and to a system for controlling an electric machine using the method of determining the magnetic flux.

SUMMARY OF THE INVENTION

The invention relates to a method of determining the magnetic flux of an electric machine, said electric machine comprising a rotor, a stator, said stator comprising windings connected to a plurality of electric phases. The following steps are carried out for this method:

a) measuring a current and a voltage in said phases of said electric machine,

b) determining the electrical rotational speed of said rotor, notably as a function of the mechanical rotational speed of said rotor,

c) constructing a dynamic model of said magnetic flux of said electric machine, said dynamic model of said magnetic flux connecting said magnetic flux to the current and to the voltage of the phases of the electric machine, and to said electrical rotational speed of said rotor, and

d) determining said magnetic flux φ by applying an adaptive Kalman filter to said dynamic magnetic flux model, said dynamic magnetic flux model being applied to said current and voltage measurements and to said determined electrical rotational speed.

According to an embodiment, said electrical rotational speed ω_(e) of said rotor is determined with a formula of the type ω_(e)=pω, with p the pole pair number of the electric machine and ω the mechanical rotational speed of said rotor.

Advantageously, said mechanical rotational speed is determined by means of a phase-locked loop PLL method.

According to an implementation, said dynamic magnetic flux model (MOD) is written:

${{\varphi_{d}(t)} = {{L_{d}{i_{d}(t)}} + {\sqrt{\frac{3}{2}}\Phi}}},{{\varphi_{q}(t)} = \left\{ \begin{matrix} {{{L_{qs}{i_{q}(t)}} - b_{qs}},} & {{{{if}\mspace{14mu}{i_{q}(t)}} \leq {- i_{qm}}},} \\ {{L_{q}{i_{q}(t)}},} & {{{{if} - i_{qm}} \leq {i_{q}(t)} \leq i_{qm}},} \\ {{L_{qs}{i_{q}(t)}} + b_{qs}} & {{{if}\mspace{14mu} i_{qm}} \leq {i_{q}(t)}} \end{matrix} \right.}$

with φ the magnetic flux of the electric machine, i the current, Φ the rotor flux, L the inductances of said electric machine, L_(qs), b_(qs) coefficients taking account of the saturation effect, d and q the axes in Park's reference frame, and i_(qm) the quadrature current value for which the magnetic flux is a linear function of the quadrature current.

According to an aspect, said adaptive Kalman filter is applied by carrying out the following steps:

i) modifying said dynamic magnetic flux model by integrating uncertainties in said model and a measurement noise,

ii) discretizing said modified dynamic magnetic flux model, and

iii) applying an adaptive Kalman filter algorithm to said modified and discretized model.

According to a feature, said adaptive Kalman filter algorithm is applied by carrying out the following steps:

(1) initiating k=0, the state vector {circumflex over (x)}(0) and the state of the covariance matrix P(0|0)=P₀,

(2) applying the time update and measurement update equations in order to obtain {circumflex over (x)}(k|k) and P(k|k):

$\left\{ {\begin{matrix} {{\hat{x}\left( {k❘{k - 1}} \right)} = {{A_{d}{\hat{x}\left( {{k - 1}❘{k - 1}} \right)}} + {B_{d}{\upsilon\left( {k - 1} \right)}}}} \\ {{{P\left( {k❘{k - 1}} \right)} = {{A_{d}{P\left( {{k - 1}❘{k - 1}} \right)}A_{d}^{T}} + {B_{d}Q_{e}B_{d}^{T}}}},} \end{matrix}\left\{ \begin{matrix} {{K(k)} = {{P\left( {k❘{k - 1}} \right)}\left( {{P\left( {k❘{k - 1}} \right)} + R} \right)^{- 1}}} \\ {{\hat{x}\left( {k❘k} \right)} = {{\hat{x}\left( {k❘{k - 1}} \right)} + {{K(k)}\left( {{x(k)} - {\hat{x}\left( {k❘{k - 1}} \right)}} \right)}}} \\ {{P\left( {k❘k} \right)} = {\left( {I - {K(k)}} \right){{P\left( {k - 1} \right)}.}}} \end{matrix} \right.} \right.$

(3) determining said magnetic flux φ estimated at time k by means of the formulas:

$\left\{ {\begin{matrix} {{{\hat{\varphi}}_{d}(k)} = {{\hat{x}}_{1}\left( {k❘k} \right)}} \\ {{{\hat{\varphi}}_{q}(k)} = {{\hat{x}}_{2}\left( {k❘k} \right)}} \end{matrix},} \right.$

with k the discretized time, A_d, B_d state realization matrices, P the covariance matrix of the state vector, R a calibration matrix, K the Kalman filter gain and Q_ϵ an adjustment parameter.

Advantageously, said electric machine is a salient-pole synchronous electric machine.

Furthermore, the invention relates to a method for controlling an electric machine comprising the following steps:

a) determining a magnetic flux φ of said electric machine by means of the method of determining said magnetic flux according to one of the above features, and

b) controlling (CON) said electric machine by means of said determined magnetic flux.

Advantageously, said electric machine is controlled (CON) according to a method providing direct control of the torque of the electric machine implemented from said magnetic flux.

Moreover, the invention relates to a system for controlling an electric machine, comprising control means for implementing the control method according to one of the above features.

BRIEF DESCRIPTION OF THE FIGURES

Other features and advantages of the method according to the invention will be clear from reading the description hereafter of embodiments given by way of non-limitative example, with reference to the accompanying figures wherein:

FIG. 1 illustrates the steps of the method according to an embodiment of the invention,

FIGS. 2 and 3 show the values, in Park's reference frame, of the magnetic flux of the electric machine as a function of the current.

DETAILED DESCRIPTION OF THE INVENTION

The present invention relates to a method of determining, in real time, the magnetic flux of an electric machine. The electric machine comprises a rotor and a stator, the stator being equipped with windings connected to several electric phases, for example three electric phases for generating a magnetic field enabling rotation of the rotor.

FIG. 1 schematically describes, by way of non-limitative example, the steps of the method according to an embodiment of the invention. The method of determining the magnetic flux comprises the following steps:

1) Measurement of currents and voltages (MES)

2) Determination of the electrical rotational speed (VIT)

3) Construction of the dynamic magnetic flux model (MOD)

4) Application of the adaptive Kalman filter (KAL)

Steps 1) to 3) are independent and they can be carried out in this order, in a different order or simultaneously.

Step 4) allows to determine magnetic flux φ of the electric machine.

Furthermore, the invention relates to a method of controlling an electric machine. Such a control method comprises steps 1) to 4) described above and an electric machine control step (CTRL) 5).

This control step 5) is an optional step. Indeed, the magnetic flux can be used in a different manner, notably for electric machine fault diagnosis.

Steps 1 to 5) are described in detail in the rest of the description hereafter.

Notations:

The following notations are used in the description:

v: voltages at the phase terminals of the electric machine,

i: currents circulating in the phases of the electric machine,

i_(qm): quadrature current value for which the magnetic flux is a linear function of the quadrature current,

ω: mechanical rotational speed of the rotor, corresponding to the rotational speed of the rotor of the electric machine in relation to the stator,

ω_(e): electrical rotational speed of the rotor,

Φ: magnetic flux intensity of the rotor magnet, considered for the method according to the invention, in a nominal case, for a temperature of 20° C.,

R(t): resistance of the electric machine windings, it is a known parameter that can be obtained experimentally,

L_(d): direct inductance of said electric machine, it is a known parameter of the electric machine (manufacturer data or experimentally obtained data),

L_(q): quadrature inductance of said electric machine, it is a known parameter of the electric machine (manufacturer data or experimentally obtained data),

L_(qs): inductance taking account of the saturation phenomenon (manufacturer data or experimentally obtained data),

p: pole pair number of the electric machine,

: magnetic flux of the electric machine,

A: matrix of the state representation

$A = {\begin{pmatrix} 0 & {\omega_{e}(t)} \\ {- {\omega_{e}(t)}} & 0 \end{pmatrix}.}$

B: identity matrix

$B = {\begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix}.}$

f: function of the state representation,

b_(qs): scalar coefficient taking account of the saturation phenomenon, this value con be obtained experimentally,

∪: vector of the state representation data,

$x = \begin{pmatrix} \varphi_{d} \\ \varphi_{q} \end{pmatrix}$

state vector of the state representation, corresponding to the non-measurable state,

ϵ: unmodified dynamics;

η: measurement noise,

Ts: sampling period,

k: discretized time,

A_(d): matrix of the discretized state representation,

B_(d): matrix of the discretized state representation,

J: cost function minimized by the Kalman filter,

P: covariance matrix of the state vector,

P₀, Q, R: calibration matrices,

Q_(ϵ): adjustment parameter,

K: Kalman filter gain.

The estimated values are denoted by a hat (circumflex accent). The mean values are indicated by an overline above the variable. The time derivatives are indicated by a dot. The notations bearing subscripts _(d) (direct) or _(q) (quadrature) mean that the quantities are expressed in Park's reference frame. Besides, the initial state values are given with a 0 (t or k=0).

1) Measurement of Currents and Voltages

The currents and the voltages in the phases of the electric machine are measured in this step.

These measurements can be performed by voltage and current sensors.

2) Determination of the Electrical Rotational Speed of the Rotor

This step consists in determining the electrical rotational speed of the rotor.

According to an embodiment of the invention, the electrical rotational speed of the rotor can be determined from the mechanical rotational speed of the rotor, by means of the formula: ω_(e)=pω.

According to an implementation of this embodiment, the mechanical rotational speed of the rotor can be estimated using any method known to the person skilled in the art. For example, the mechanical rotational speed can be estimated from a phase-locked loop (PLL) type method. In a variant, the method of estimating the mechanical rotational speed can be as described in patent application FR-2,984,637.

Alternatively, the mechanical rotational speed of the rotor can be measured by means of a speed sensor arranged on the electric machine.

In a variant, the electrical rotational speed can be directly determined.

3) Construction of the Dynamic Magnetic Flux Model

A dynamic model of the magnetic flux is constructed in this step. The dynamic magnetic flux model connects the magnetic flux to the current, to the voltage in the electric phases of the electric machine and to the electrical rotational speed of the rotor. The model is referred to as dynamic because it is a function of the rotational speed.

The dynamic magnetic flux model is a state representation of the electric machine. It is reminded that, in systems theory (and automation), a state representation allows a dynamic system to be modelled in matrix form, using state variables. This representation may be linear or not, continuous or discrete. The representation allows to determine the internal state and the outputs of the system at any future time if the state at the initial time and the behaviour of the input variables that influence the system are known.

In Park's reference frame (d, q), the dynamic magnetic flux model can be expressed by the following differential equations:

$\left\{ {\begin{matrix} {{{\overset{.}{\varphi}}_{d}(t)} = {{{- {R(t)}}{i_{d}(t)}} + {{\omega_{e}(t)}{\varphi_{q}(t)}} + {\upsilon_{d}(t)}}} \\ {{{\overset{.}{\varphi}}_{q}(t)} = {{{- {R(t)}}{i_{q}(t)}} - {{\omega_{e}(t)}{\varphi_{d}(t)}} + {\upsilon_{q}(t)}}} \end{matrix},} \right.$

When writing these differential equations in vector form, we obtain:

$\begin{bmatrix} {{\overset{.}{\varphi}}_{d}(t)} \\ {{\overset{.}{\varphi}}_{q}(t)} \end{bmatrix} = {{\begin{bmatrix} 0 & {\omega_{e}(t)} \\ {- {\omega_{e}(t)}} & 0 \end{bmatrix}\begin{bmatrix} {\varphi_{d}(t)} \\ {\varphi_{q}(t)} \end{bmatrix}} + \begin{bmatrix} {{\upsilon_{d}(t)} - {{R(t)}{i_{d}(t)}}} \\ {{\upsilon_{q}(t)} - {{R(t)}{i_{q}(t)}}} \end{bmatrix}}$

or, in an equivalent manner:

{dot over (x)}(t)=A(t)x(t)+Bu(t)

with

${x(t)} = \begin{bmatrix} {\varphi_{d}(t)} \\ {\varphi_{q}(t)} \end{bmatrix}$

the non-measurable state and

${\upsilon(t)} = \begin{bmatrix} {{\upsilon_{d}(t)} - {{R(t)}{i_{d}(t)}}} \\ {{\upsilon_{q}(t)} - {{R(t)}{i_{q}(t)}}} \end{bmatrix}$

the model input.

According to this equation, it is clear that the equation of state of the magnetic flux of the electric machine can be described by a linear model over time. However, the equation of state of the magnetic flux is a highly non-linear function of currents i_(d) and i_(q), and of magnetic flux Φ of the rotor. We can then write:

$\left\{ \begin{matrix} {{\varphi_{d}(t)} = {{f_{d}\left( {{i_{q}(t)},{i_{q}(t)}} \right)} + {\sqrt{\frac{3}{2}}{\Phi(t)}}}} \\ {{\varphi_{q}(t)} = {f_{q}\left( {{i_{q}(t)},{i_{q}(t)}} \right)}} \end{matrix} \right.$

FIGS. 2 and 3 show examples of functions ƒ_(d) and ƒ_(q) as a function of currents i_(d) and i_(q) for a given application. It can be noted that, while function ƒ_(d) is a relatively linear function in relation to i_(d), this is not the case for function ƒ_(q). Thus, the problem of estimating the magnetic flux of the electric machine becomes more complex, all the more so since functions ƒ_(d) and ƒ_(q) are also a function of the mechanical angle of the rotor.

A solution to this complex problem could consist in mapping the magnetic flux quantities φ_(d) and φ_(q). This solution requires a high storage capacity and a large number of experimental measurements. Besides, the magnetic flux of the rotor varies with temperature. The model described above is therefore complex to implement.

According to an embodiment of the invention, it is possible to construct a dynamic magnetic flux model simple to implement while remaining accurate, and the simplified model can be defined by the following equations:

$\quad\left\{ \begin{matrix} {{{\varphi_{d}(t)} = {{L_{d}{i_{d}(t)}} + {\sqrt{\frac{3}{2}}\Phi}}},} \\ {{\varphi_{q}(t)} = \left\{ \begin{matrix} {{{L_{qs}{i_{q}(t)}} - b_{qs}},} & {{{{if}\mspace{14mu}{i_{q}(t)}} \leq {- i_{qm}}},} \\ {{L_{q}{i_{q}(t)}},} & {{{{if}\; - i_{qm}} \leq {i_{q}(t)} \leq i_{qm}},} \\ {{L_{qs}{i_{q}(t)}} + b_{qs}} & {{{if}\mspace{14mu} i_{qm}} \leq {i_{q}(t)}} \end{matrix} \right.} \end{matrix} \right.$

This model has the advantage of being accurate without being memory and computational time consuming, which facilitates its implementation in an adaptive Kalman filter and possibly in an electric machine control method.

According to an implementation of this embodiment, magnetic flux Φ of the rotor can be considered in a nominal case where a temperature of 20° C. is considered.

For this embodiment, the equation of state can be written as follows:

${\overset{.}{x}(t)} = {{{A(t)}{x(t)}} + {{Bu}(t)}}$ ${x(t)} = \begin{bmatrix} {{L_{d}{i_{d}(t)}} + {\sqrt{\frac{3}{2}}\Phi}} \\ {f\left( {i_{d}(t)} \right)} \end{bmatrix}$

with:

${f\left( {i_{d}(t)} \right)} = \left\{ \begin{matrix} {{{L_{qs}{i_{q}(t)}} - b_{qs}},} & {{{{if}\mspace{14mu}{i_{q}(t)}} \leq {- i_{qm}}},} \\ {{L_{q}{i_{q}(t)}},} & {{{{if}\; - i_{qm}} \leq {i_{q}(t)} \leq i_{qm}},} \\ {{L_{qs}{i_{q}(t)}} + b_{qs}} & {{{if}\mspace{14mu} i_{qm}} \leq {i_{q}(t)}} \end{matrix} \right.$

4) Application of the Adaptive Kalman Filter

The magnetic flux of the electric machine is determined in this step. An adaptive Kalman filter is therefore applied to the dynamic model constructed in step 3), to the voltage and current measurements obtained in step 1) and to the electrical rotational speed of the rotor obtained in step 2). Application of the Kalman filter allows a state observer to be obtained. The adaptive Kalman filter provides adaptation of the noise covariance matrix as a function of the rotational speed of the electric machine. Thus, the filter is efficient over a wide operating range of the electric machine. Besides, the adaptive Kalman filter is robust against magnetic flux variations of the rotor and the inductance.

It is reminded that a state observer, or a state estimator, is, in systems theory and automation, an extension of a model represented as a state representation. When the state of the system is not measurable, an observer allowing the state to be reconstructed from a model is constructed.

According to an embodiment of the invention, the adaptive Kalman filter can be applied by carrying out the following steps:

-   -   modifying the dynamic magnetic flux model by integrating         unmodelled dynamics and a measurement noise,     -   discretizing the modified dynamic magnetic flux model, and     -   applying an adaptive Kalman filter algorithm to the modified and         discretized dynamic model.

According to an example of this embodiment, the various steps described hereafter can be carried out.

The dynamic model of the magnetic flux is modified so as to take account of the uncertainties of the model e(t) and the measurement noise η(t). The modified model can be written:

$\quad\left\{ \begin{matrix} {{\overset{.}{x}(t)} = {{{A(t)}{x(t)}} + {{Bu}(t)} + {\epsilon(t)}}} \\ {{x(t)} = {\begin{bmatrix} {{L_{d}{i_{d}(t)}} + {\sqrt{\frac{3}{2}}\Phi}} \\ {f\left( {i_{d}(t)} \right)} \end{bmatrix} + {\eta(t)}}} \end{matrix} \right.$

It is thus possible to obtain a more realistic magnetic flux model.

This model is then discretized for application of the Kalman filter. A sampling period T_(s) is therefore considered. The following equations can then be written:

$\quad\left\{ \begin{matrix} {{x(k)} = {{{A_{d}\left( {k - 1} \right)}{x\left( {k - 1} \right)}} + {{B_{d}\left( {k - 1} \right)}{u\left( {k - 1} \right)}} + {{B_{d}\left( {k - 1} \right)}{\epsilon\left( {k - 1} \right)}}}} \\ {{x(t)} = {\begin{bmatrix} {{L_{d}{i_{d}(k)}} + {\sqrt{\frac{3}{2}}\Phi}} \\ {f\left( {i_{d}(k)} \right)} \end{bmatrix} + {\eta(k)}}} \end{matrix} \right.$

with:

$\quad\left\{ \begin{matrix} {{A_{d}\left( {k - 1} \right)} = e^{{{TeA}{(t)}},}} \\ {{B_{d}\left( {k - 1} \right)} = {\underset{0}{\int\limits^{T_{s}}}{e^{\tau\;{A{(\tau)}}}{Bd}\;\tau}}} \end{matrix} \right.$

Given that matrix A is a function of speed, itself a function of time, it is not possible to determine matrices A_(d) and B_(d) analytically.

According to an aspect of this embodiment, matrices A_(d) and B_(d) can be obtained by means of a Taylor series. Preferably, for efficiency purposes, matrices A_(d) and B_(d) can be determined by means of a 3^(rd) order Taylor series. In this case, matrices A_(d) and B_(d) can be written:

${A_{d} = {\begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} + {T_{s}\begin{bmatrix} 0 & \omega_{e} \\ {- \omega_{e}} & 0 \end{bmatrix}} + {\frac{T_{s}^{2}}{2}\begin{bmatrix} 0 & \omega_{e} \\ {- \omega_{e}} & 0 \end{bmatrix}}^{2} + {\frac{T_{s}^{3}}{6}\begin{bmatrix} 0 & \omega_{e} \\ {- \omega_{e}} & 0 \end{bmatrix}}^{3}}},{B_{d} = {{T_{s}\begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix}} + {\frac{T_{s}^{2}}{2}\begin{bmatrix} 0 & \omega_{e} \\ {- \omega_{e}} & 0 \end{bmatrix}} + {\frac{T_{s}^{3}}{6}\begin{bmatrix} 0 & \omega_{e} \\ {- \omega_{e}} & 0 \end{bmatrix}}^{2} + {\frac{T_{s}^{4}}{24}\begin{bmatrix} 0 & \omega_{e} \\ {- \omega_{e}} & 0 \end{bmatrix}}^{3}}}$

Finally, an adaptive Kalman filter algorithm is applied.

We then put:

ζ(k)=B _(d)ϵ(k;

One way of determining the unknown state vector x is to take into account the information ζ(k) and η(k) in the adoptive Kalman filter. In practice, this adaptive Kalman filter provides a solution to the minimization problem described below:

$\min\limits_{x{(k)}}\mspace{11mu}{J(k)}$

with:

${J(k)} = {{\left( {{x(0)} - {\overset{\_}{x}(0)}} \right)^{T}{P_{0}^{- 1}\left( {{x(0)} - {\overset{\_}{x}(0)}} \right)}} + {\sum\limits_{j = 1}^{k}\;\left( {{{\zeta\left( {j - 1} \right)}^{T}Q^{- 1}{\zeta\left( {k - 1} \right)}} + {{\eta(j)}^{T}R^{- 1}{\eta(j)}}} \right)}}$      ζ(k − 1) = x(k) − A_(d)(k − 1)x(k − 1) − B_(d)u(k − 1) $\mspace{79mu}{{\eta(k)} = {{x(k)} - \begin{bmatrix} {{L_{d}{i_{d}(k)}} + {\sqrt{\frac{3}{2}}\Phi}} \\ {f\left( {i_{d}(k)} \right)} \end{bmatrix}}}$

Cost function J provides a guide for selecting matrices P₀, R and Q, with the following conditions:

1. If the initial state x(k) at the time k=0 is known, i.e. {acute over (x)}(0)≈x(0) then the values of matrix P₀ relatively small. Otherwise, the values of matrix P₀ are relatively great.

2. If there is much measurement noise, then the values of matrix R are relatively small. Otherwise, the values of matrix R are relatively great.

Furthermore, Q can be selected as:

Q=B _(d) Q _(e) B _(d) ^(T)

with Q_(e) an adjustment parameter. This relation implies that matrix Q is a function of the rotational speed of the rotor.

In order to solve the minimization problem by means of the adaptive Kalman fitter, the below hypotheses can be adopted. These hypotheses mainly concern a mathematical interpretation of matrices P₀, R and Q.

-   -   initial state x(0) is a random vector that is not correlated         with noises ζ(k) and η(k),     -   initial state x(0) has a known mean {tilde over (x)}(0) and a         covariance defined by:

P ₀ =E[(x(0)− x (0))(x(0)− x (0))^(T)]

where E denotes the expected value,

-   -   ζ(k) and η(k) are not correlated, and they are white noises with         zero mean, with covariance matrices Q and R respectively, in         other words:

${E\left\lbrack {{\zeta(k)}{\zeta(j)}^{T}} \right\rbrack} = \left\{ {{\begin{matrix} {Q,\mspace{14mu}{{{if}\mspace{14mu} k} = j},} \\ {0,\mspace{14mu}{{{if}\mspace{14mu} k} \neq j}} \end{matrix}{E\left\lbrack {{\eta(k)}{\eta(j)}^{T}} \right\rbrack}} = \left\{ {{{\begin{matrix} {R,\mspace{14mu}{{{if}\mspace{14mu} k} = j},} \\ {0,\mspace{14mu}{{{if}\mspace{14mu} k} \neq j}} \end{matrix}{E\left\lbrack {{\zeta(k)}{\eta(j)}^{T}} \right\rbrack}} = 0},\mspace{14mu}{{for}\mspace{14mu}{all}\mspace{14mu} k},j} \right.} \right.$

It can be noted that this hypothesis also implies that Q and R are symmetric positive semidefinite matrices.

The following notations are also adopted:

-   -   {circumflex over (x)}(k|k−1) is the estimate of x(k) from the         measurements up to the time k−1, i.e. x(k−1), x(k−2), . . . and         u(k−1), u(k−2), . . .     -   {circumflex over (x)}(k|k) is the estimate of x(k) from the         measurements up to the time k, i.e. x(k), x(k−1), . . . and         u(k), u(k−1), . . .     -   P(k|k−1) is the covariance matrix of x(k) given x(k−1), x(k−2),         . . . and u(k−1), u(k−2), . . .     -   P(k|k) is the covariance matrix of x(k) from the measurements up         to the time k, i.e. x(k), x(k−1), . . . and u(k), u(k−1), . . .

The adaptive Kalman filter algorithm can then be summarized as follows, with a time update equation:

$\quad\left\{ \begin{matrix} {{{\hat{x}\left( {k❘{k - 1}} \right)} = {{A_{d}{\hat{x}\left( {{k - 1}❘{k - 1}} \right)}} + {B_{d}{u\left( {k - 1} \right)}}}},} \\ {{P\left( {k❘{k - 1}} \right)} = {{A_{d}{P\left( {{k - 1}❘{k - 1}} \right)}A_{d}^{T}} + {B_{d}Q_{c}B_{d}^{T}}}} \end{matrix} \right.$

and a measurement update equation:

$\quad\left\{ \begin{matrix} {{K(k)} = {{P\left( {k❘{k - 1}} \right)}\left( {{P\left( {k❘{k - 1}} \right)} + R} \right)^{- 1}}} \\ {{\hat{x}\left( {k❘k} \right)} = {{\hat{x}\left( {k❘{k - 1}} \right)} + {{K(k)}\left( {{x(k)} - {\hat{x}\left( {k❘{k - 1}} \right)}} \right)}}} \\ {{P\left( {k❘k} \right)} = {\left( {I - {K(k)}} \right){P\left( {k❘{k - 1}} \right)}}} \end{matrix} \right.$

Thus, the magnetic flux of the electric machine can be determined.

According to an implementation of the invention, the adaptive Kalman filter approach can be summarized as follows:

1. The input data estimated at the previous time, listed below, and parameters Q

and R (covariance matrices) are used, and we determine:

${x(k)} = \begin{bmatrix} {{L_{d}{i_{d}(k)}} + {\sqrt{\frac{3}{2}}\Phi}} \\ {f\left( {i_{d}(k)} \right)} \end{bmatrix}$ ${u(k)} = \begin{bmatrix} {{v_{d}(t)} - {{R(t)}{i_{d}(t)}}} \\ {{v_{q}(t)} - {{R(t)}{i_{q}(t)}}} \end{bmatrix}$ x̂(k − 1❘k − 1) P(k − 1❘k − 1)

2. The output is determined by carrying out the following steps:

(1) initializing k=0, state vector {tilde over (x)}(0) and the state of the covariance matrix P(0|0)=P₀,

(2) applying the time update and measurement update equations so as to obtain {circumflex over (x)}(k|k) and P(k|k):

$\quad\left\{ \begin{matrix} {{{\hat{x}\left( {k❘{k - 1}} \right)} = {{A_{d}{\hat{x}\left( {{k - 1}❘{k - 1}} \right)}} + {B_{d}{u\left( {k - 1} \right)}}}},} \\ {{P\left( {k❘{k - 1}} \right)} = {{A_{d}{P\left( {{k - 1}❘{k - 1}} \right)}A_{d}^{T}} + {B_{d}Q_{c}B_{d}^{T}}}} \end{matrix}\quad \right.\left\{ {\begin{matrix} {{K(k)} = {{P\left( {k❘{k - 1}} \right)}\left( {{P\left( {k❘{k - 1}} \right)} + R} \right)^{- 1}}} \\ {{\hat{x}\left( {k❘k} \right)} = {{\hat{x}\left( {k❘{k - 1}} \right)} + {{K(k)}\left( {{x(k)} - {\hat{x}\left( {k❘{k - 1}} \right)}} \right)}}} \\ {{P\left( {k❘k} \right)} = {\left( {I - {K(k)}} \right){P\left( {k❘{k - 1}} \right)}}} \end{matrix},} \right.$

(3) determining magnetic flux φ estimated at the time k with the formulas:

$\quad\left\{ \begin{matrix} {{{{\hat{\varphi}}_{d}(k)} = {{\hat{x}}_{1}\left( {k❘k} \right)}},} \\ {{{\hat{\varphi}}_{q}(k)} = {{\hat{x}}_{2}\left( {k❘k} \right)}} \end{matrix} \right.$

In these equations, subscript 1 denotes the first term of vector x and subscript 2 denotes the second term of vector x.

5) Electric Machine Control

This step is optional.

The invention also relates to a method for real-time control of a synchronous electric machine, wherein the following steps are carried out:

-   -   determining the magnetic flux of the electric machine by means         of the method (steps 1) to 4)) described above, and     -   controlling the torque of said synchronous machine as a function         of the determined magnetic flux. This step can be carried out         using any conventional means of controlling the electric machine         that takes account of the magnetic flux. For example, control of         the electric machine can be based on an effective direct torque         control method, particularly suited to salient-pole synchronous         electric machines.

Furthermore, the invention relates to a system for controlling a synchronous electric machine suited to applying the method as described above. Such an electric machine control system can comprise electric machine control means including means of determining the magnetic flux of the electric machine and means of controlling the torque of the electric machine. The means of determining the magnetic flux determine the magnetic flux of the electric machine from the current and voltage measurements, i.e. the currents and voltages of each of the three phases of the electric machine. The torque control means apply voltages at the terminals of the electric machine as a function of the magnetic flux so as to ensure a torque setpoint for the electric machine. Advantageously, the control system can be a controller comprising computer means.

This control method and system can be used for an electric machine on board a vehicle, notably an electric or hybrid motor vehicle. However, the control system described is not limited to this application and it is suitable for all electric machine applications.

According to an aspect, the electric machine is a salient-pole synchronous electric machine. Indeed, the method is particularly well-suited to this type of machine, on the one hand, because the dynamic model of the electric machine is quite representative of this type of electric machine, and on the other hand because determination of the magnetic flux enables control of such an electric machine, notably through direct control of the torque.

It is clear that the invention is not limited to only the embodiments of the recesses described above by way of example and that it encompasses multiple variants. 

11. A method of determining magnetic flux of an electric machine, the electric machine comprising a rotor, a stator, the stator comprising windings connected to electric phases, comprising steps of: a) measuring a current and a voltage in the phases of the electric machine, b) determining the electrical rotational speed of the rotor, as a function of mechanical rotational speed of the rotor; c) constructing a dynamic model of the magnetic flux of the electric machine, the dynamic model of the magnetic flux connecting the magnetic flux to the current and to the voltage of the electric phases of the electric machine, and to the electrical rotational speed of the rotor; and d) determining the magnetic flux φ by applying an adaptive Kalman filter to the dynamic magnetic flux model, the dynamic magnetic flux model being applied to the current and voltage measurements and to the determined electrical rotational speed.
 12. A magnetic flux determination method as recited in claim 11, wherein the electrical rotational speed of the rotor is determined with a formula ω_(e)=pω, with p being a pole pair number of the electric machine and co being the mechanical rotational speed of the rotor.
 13. A magnetic flux determination method as claimed in claim 12, wherein the mechanical rotational speed is determined by use of a phase-locked loop method.
 14. A magnetic flux determination method as claimed in claim 11, wherein the dynamic magnetic flux model is written as: $\left\{ {\begin{matrix} {{{\varphi_{d}(t)} = {{L_{d}{i_{d}(t)}} + {\sqrt{\frac{3}{2}}\Phi}}},} \\ {{\varphi_{q}(t)} = \left\{ \begin{matrix} {{{L_{qs}{i_{q}(t)}} - b_{qs}},} & {{{{if}\mspace{14mu}{i_{q}(t)}} \leq {- i_{qm}}},} \\ {{L_{q}{i_{q}(t)}},} & {{{{if}\mspace{14mu} - i_{qm}} \leq {i_{q}(t)} \leq i_{qm}},} \\ {{L_{qs}{i_{q}(t)}} + b_{qs}} & {{{if}\mspace{14mu} i_{qm}} \leq {- {i_{q}(t)}}} \end{matrix} \right.} \end{matrix}\quad} \right.$ with φ being the magnetic flux of the electric machine, i being the current, Φ being the rotor flux, L being the inductances of the electric machine, L_(qs), and b_(qs) being coefficients accounting for saturation effect, d and q being the axes in Park's reference frame, and i_(qm) being a quadrature current value for which the magnetic flux is a linear function of the quadrature current.
 15. A magnetic flux determination method as claimed in claim 12, wherein the dynamic magnetic flux model is written as: $\left\{ {\begin{matrix} {{{\varphi_{d}(t)} = {{L_{d}{i_{d}(t)}} + {\sqrt{\frac{3}{2}}\Phi}}},} \\ {{\varphi_{q}(t)} = \left\{ \begin{matrix} {{{L_{qs}{i_{q}(t)}} - b_{qs}},} & {{{{if}\mspace{14mu}{i_{q}(t)}} \leq {- i_{qm}}},} \\ {{L_{q}{i_{q}(t)}},} & {{{{if}\mspace{14mu} - i_{qm}} \leq {i_{q}(t)} \leq i_{qm}},} \\ {{L_{qs}{i_{q}(t)}} + b_{qs}} & {{{if}\mspace{14mu} i_{qm}} \leq {- {i_{q}(t)}}} \end{matrix} \right.} \end{matrix}\quad} \right.$ with φ being the magnetic flux of the electric machine, i being the current, Φ being the rotor flux, L being the inductances of the electric machine, L_(qs), and b_(qs) being coefficients accounting for saturation effect, d and q being the axes in Park's reference frame, and i_(qm) being a quadrature current value for which the magnetic flux is a linear function of the quadrature current.
 16. A magnetic flux determination method as claimed in claim 13, wherein the dynamic magnetic flux model is written as: $\left\{ {\begin{matrix} {{{\varphi_{d}(t)} = {{L_{d}{i_{d}(t)}} + {\sqrt{\frac{3}{2}}\Phi}}},} \\ {{\varphi_{q}(t)} = \left\{ \begin{matrix} {{{L_{qs}{i_{q}(t)}} - b_{qs}},} & {{{{if}\mspace{14mu}{i_{q}(t)}} \leq {- i_{qm}}},} \\ {{L_{q}{i_{q}(t)}},} & {{{{if}\mspace{14mu} - i_{qm}} \leq {i_{q}(t)} \leq i_{qm}},} \\ {{L_{qs}{i_{q}(t)}} + b_{qs}} & {{{if}\mspace{14mu} i_{qm}} \leq {- {i_{q}(t)}}} \end{matrix} \right.} \end{matrix}\quad} \right.$ with φ being the magnetic flux of the electric machine, i being the current, Φ being the rotor flux, L being the inductances of the electric machine, L_(qs), and b_(qs) being coefficients accounting for saturation effect, d and q being the axes in Park's reference frame, and i_(qm) being a quadrature current value for which the magnetic flux is a linear function of the quadrature current.
 17. A magnetic flux determination method as claimed in claim 11, wherein the adaptive Kalman filter is applied by carrying out steps of: i) modifying the dynamic magnetic flux model by integrating uncertainties in the model and a measurement noise; ii) discretizing the modified dynamic magnetic flux model; and iii) applying an adaptive Kalman filter algorithm to the modified and a discretized model.
 18. A magnetic flux determination method as claimed in claim 12, wherein the adaptive Kalman filter is applied by carrying out steps of: i) modifying the dynamic magnetic flux model by integrating uncertainties in the model and a measurement noise; ii) discretizing the modified dynamic magnetic flux model; and iii) applying an adaptive Kalman filter algorithm to the modified and a discretized model.
 19. A magnetic flux determination method as claimed in claim 13, wherein the adaptive Kalman filter is applied by carrying out steps of: i) modifying the dynamic magnetic flux model by integrating uncertainties in the model and a measurement noise; ii) discretizing the modified dynamic magnetic flux model; and iii) applying an adaptive Kalman filter algorithm to the modified and a discretized model.
 20. A magnetic flux determination method as claimed in claim 14, wherein the adaptive Kalman filter is applied by carrying out steps of: i) modifying the dynamic magnetic flux model by integrating uncertainties in the model and a measurement noise; ii) discretizing the modified dynamic magnetic flux model; and iii) applying an adaptive Kalman filter algorithm to the modified and a discretized model.
 21. A magnetic flux determination method as claimed in claim 15, wherein the adaptive Kalman filter is applied by carrying out steps of: i) modifying the dynamic magnetic flux model by integrating uncertainties in the model and a measurement noise; ii) discretizing the modified dynamic magnetic flux model; and iii) applying an adaptive Kalman filter algorithm to the modified and a discretized model.
 22. A magnetic flux determination method as claimed in claim 16, wherein the adaptive Kalman filter is applied by carrying out steps of: i) modifying the dynamic magnetic flux model by integrating uncertainties in the model and a measurement noise; ii) discretizing the modified dynamic magnetic flux model; and iii) applying an adaptive Kalman filter algorithm to the modified and a discretized model.
 23. A magnetic flux determination method as claimed in claim 17, wherein the adaptive Kalman filter algorithm is applied by carrying out steps of: (1) initializing k=0, state vector {circumflex over (x)}(0) and a state of the covariance matrix P(0|0)=P₀; (2) applying a time update and measurement update equations to obtain {circumflex over (x)}(k|k) and P(k|k): $\left\{ {\begin{matrix} {{{\hat{x}\left( {{k\left. {k - 1} \right)} = {{A_{d}{\hat{x}\left( {k - 1} \right.}k} - 1}} \right)} + {B_{d}{u\left( {k - 1} \right)}}},} \\ {{{P\left( {{k\left. {k - 1} \right)} = {{A_{d}{P\left( {k - 1} \right.}k} - 1}} \right)}A_{d}^{T}} + {B_{d}Q_{t}B_{d}^{T}}} \end{matrix}{\quad\left\{ {\begin{matrix} {{K(k)} = {P\left( {k\left. {k - 1} \right)\left( {P\left( {{k\left. {k - 1} \right)} + R} \right)}^{- 1} \right.} \right.}} \\ {\hat{x}\left( {{k\left. k \right)} = {\hat{x}\left( {{k\left. {k - 1} \right)} + {{K(k)}\left( {{{x(k)} - {\hat{x}\left( {k\left. {k - 1} \right)} \right)}},} \right.}} \right.}} \right.} \\ {P\left( {{k\left. k \right)} = {\left( {I - {K(k)}} \right){P\left( {k\left. {k - 1} \right)} \right.}}} \right.} \end{matrix}\quad} \right.}} \right.$ (3) determining the magnetic flux φ estimated at time k by means of the formulas: $\left\{ {\begin{matrix} {{{\hat{\varphi}}_{d}(k)} = {{\hat{x}}_{1}\left( {{k\left. k \right)},} \right.}} \\ \left. {{{\hat{\varphi}}_{q}(k)} = {{\hat{x}}_{2}\left( {k{k}} \right.}} \right) \end{matrix}\quad} \right.$ with k being discretized time, A_d, B_d being state realization matrices, P being a covariance matrix of the state vector, R being a calibration matrix, K being the Kalman filter gain and Q_ϵ being an adjustment parameter.
 24. A magnetic flux determination method as claimed in claim 11, wherein the electric machine is a salient-pole synchronous electric machine.
 25. A method for controlling an electric machine, comprising steps of: a) determining a magnetic flux of the electric machine by use of the method of determining the magnetic flux as claimed in claim 11, and b) controlling the electric machine by use of the determined magnetic flux.
 26. A control method as claimed in claim 25, wherein the electric machine is controlled according to a method providing direct control of torque of the electric machine implemented from the magnetic flux.
 27. A system for controlling an electric machine, comprising a control for implementing a control method as claimed in claim
 25. 28. A system for controlling an electric machine, comprising a control for implementing a control method as claimed in claim
 26. 